﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace nxt
{
    class pixelCounter
    {
        public double getCM_Distance(double max_distanceInCm, double maxDisctanceFromFloorInCm, double distanceFromFloor)
        {
            double ret_one_cm_distance = -1;
            if (distanceFromFloor > 0)
            {
                ret_one_cm_distance = (max_distanceInCm / distanceFromFloor) * maxDisctanceFromFloorInCm;
            }
            return ret_one_cm_distance;
        }
                
        public pixelCounter()
        {
            // maximális távolság a földtől - referencia pont
            // legyen 40 cm, 5,2 pixel = 1 cm méréssel


            // maximális referencia távolság
            double max_ref_distanceFromFloor = 40;
            // maximális referencia ponti 1cm-re jutó pixelszám
            double[] Pixels = new double[] { 5.2, 7.5, 10.1, 15.3, 24.2, 44.2, 93.7 };//40-10cm-es távokban 

            double max_ref_distanceFromFloor_InPixel = Pixels[4];
            // a kamera aktuális magassága
            double currentCameraDistanceFromFloor = 20; //másik függvény bejövő paramétere lesz
            double[] Distances = new double[] { 40, 35, 30, 25, 20, 15, 10 };//40-10cm

            // eredmény
            double pixel = getCM_Distance(max_ref_distanceFromFloor, max_ref_distanceFromFloor_InPixel, currentCameraDistanceFromFloor);
        }
        public double centrummovex(int x,int x1) // az y a labda x kooordinátája, az x1 a kép középpont koordinátája
        {
            double halfwidth;
            halfwidth = x1;
            double pcm;
            pcm = 10.1; // 30 cm magasságra lett megírva
            double movex;
            movex = (halfwidth - x) / pcm;
            return movex; // ez a középpontól való távolság cm-ben
        }
        public double centrummovey(int y, int y1) // az y a labda x kooordinátája, az y1 a kép középpont koordinátája
        {
            double halflenght;
            halflenght = y1;
            double pcm;
            pcm = 10.1; // 30 cm magasságra lett megírva
            double movey;
            movey = (halflenght - y) / pcm;
            return movey; //ez a középpontól való távolság cm-ben
        }
        
    }
}
